package IO操作;

import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.nio.charset.StandardCharsets;
import java.util.Scanner;

public class Test2 {
    public static void main(String[] args) throws IOException {
        Scanner scan  = new Scanner(System.in);
        File file = new File("note.txt");
        /**
         * 默认的FileOutputStream的构造器是覆盖模式，重新执行程序会清空之前的数据
         * 使用带Boolean append的构造器输入true可以追加内容，不会清除原来的数据
         */
        FileOutputStream fos =new FileOutputStream(file,true);
        while (true){
            String str = scan.nextLine();
           // str.equals("exit")这种写法无法确定返回的字符串（str）是否为null，所以可能会出现空指针异常
            if ("exit" .equals(str)){//这种方法则不会出现空指针
                fos.close();
                break;
            }
            fos.write(str.getBytes(StandardCharsets.UTF_8));

            System.out.println("输入完毕");
        }


    }
}
